package com.base.api.pubg;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

/**
 * PUBG数据服务接口
 *
 * @author: junw
 * @date: 2018/5/17 11:41
 */
public interface IPubgDataService {

    /**
     * 获取落点信息
     *
     * @param displayWidth 地图显示宽度
     * @param matchId 比赛ID
     * @return 所有人的落点信息
     */
    JSONArray getTelemetry(String displayWidth, String matchId);

    /**
     * 获取玩家运动轨迹
     *
     * @param displayWidth 地图显示宽度
     * @param matchId 比赛ID
     * @param name 玩家名称
     * @return 该玩家轨迹坐标
     */
    JSONArray getPosition(String displayWidth, String matchId, String name);

    /**
     * 获取所有玩家运动轨迹
     *
     * @param displayWidth 地图显示宽度
     * @param matchId 比赛ID
     * @return 所有玩家轨迹坐标
     */
    String getAllPosition(String displayWidth, String matchId);

    /**
     * 启动下载器
     *
     * @param server 服务器
     * @param threadCount 线程数
     * @param names 玩家ID
     * @return 启动结果
     */
    String starDownloader(String server, int threadCount, String... names);

    /**
     * 获取服务器列表
     *
     * @return 服务器列表
     */
    JSONArray getServerList();

    /**
     * 下载器当前信息（每秒一次）
     *
     * @return 下载器当前信息
     */
    JSONObject heartbeat();

    /**
     * 结束下载
     *
     * @return String
     */
    String close();

    /**
     * 查询本地数据
     *
     * @return String
     */
    String querymatch(String name, String server, String startdate, String enddate);
}
